﻿/**
 * @file:   chatList.h
 * @brief:
 * @author: 超能
 * @create: 2023/03/25
 * @update: 2023/04/06
 */
#pragma once
#ifndef _CHAT_LIST_H_
#define _CHAT_LIST_H_

#include <list>
#include <string>
#include "chatDataBase.h"

#define MAX_GROUPS_NUM 1024	// 最大群组数量

typedef struct User {
	std::string name;
	struct bufferevent* bev;
}User;

typedef struct GroupUser {
	std::string name;
}GroupUser;

typedef struct Group {
	std::string name;
	std::list<GroupUser>* memberList;
}Group;

class ChatIist {
private:
	std::list<User>* onlineUsers; // 保存所有在线用户信息
	std::list<Group>* groupInfo; // 保存所有群信息
	ChatDataBase* myDataBase;// 数据库对象
public:
	// 构造函数
	ChatIist();
	// 析构函数
	~ChatIist();
};

#endif // !_CHAT_LIST_H_
